package com.qf.zwy.office.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;
import lombok.Data;

/**
 * 审批表
 * @author 子未语
 */
@Data
@TableName(value = "approval_form")
public class ApprovalForm {
    /**
     * 审批主键
     */
    @TableId(value = "approval_id", type = IdType.INPUT)
    private Integer approvalId;

    /**
     * 审批编号
     */
    @TableField(value = "approval_no")
    private String approvalNo;

    /**
     * 申请人Id
     */
    @TableField(value = "candidate_id")
    private Integer candidateId;

    /**
     * 手机号
     */
    @TableField(value = "phone_number")
    private String phoneNumber;

    /**
     * 审批标题
     */
    @TableField(value = "title")
    private String title;

    /**
     * 入职部门
     */
    @TableField(value = "onboarding_department")
    private String onboardingDepartment;

    /**
     * 审批状态，0为审批中，1为审批通过，2审批拒绝，3审批撤销
     */
    @TableField(value = "approval_status")
    private Integer approvalStatus;

    /**
     * 上级负责人
     */
    @TableField(value = "person_in_charge")
    private String personInCharge;

    /**
     * 员工类型
     */
    @TableField(value = "employee_type")
    private String employeeType;

    /**
     * 合同公司
     */
    @TableField(value = "contract_company")
    private String contractCompany;

    /**
     * 员工状态
     */
    @TableField(value = "employee_status")
    private Integer employeeStatus;

    /**
     * 发起时间
     */
    @TableField(value = "the_starting_time")
    private Date theStartingTime;

    /**
     * 预计入职时间
     */
    @TableField(value = "estimated_date_to_join")
    private Date estimatedDateToJoin;

    /**
     * 转正日期
     */
    @TableField(value = "regularization_date")
    private Date regularizationDate;

    /**
     * 试用期，单位月
     */
    @TableField(value = "probation")
    private Integer probation;

    /**
     * 审批类型
     */
    @TableField(value = "approval_type")
    private Integer approvalType;

    public static final String COL_APPROVAL_ID = "approval_id";

    public static final String COL_APPROVAL_NO = "approval_no";

    public static final String COL_CANDIDATE_ID = "candidate_id";

    public static final String COL_PHONE_NUMBER = "phone_number";

    public static final String COL_TITLE = "title";

    public static final String COL_ONBOARDING_DEPARTMENT = "onboarding_department";

    public static final String COL_APPROVAL_STATUS = "approval_status";

    public static final String COL_PERSON_IN_CHARGE = "person_in_charge";

    public static final String COL_EMPLOYEE_TYPE = "employee_type";

    public static final String COL_CONTRACT_COMPANY = "contract_company";

    public static final String COL_EMPLOYEE_STATUS = "employee_status";

    public static final String COL_THE_STARTING_TIME = "the_starting_time";

    public static final String COL_ESTIMATED_DATE_TO_JOIN = "estimated_date_to_join";

    public static final String COL_REGULARIZATION_DATE = "regularization_date";

    public static final String COL_PROBATION = "probation";

    public static final String COL_APPROVAL_TYPE = "approval_type";
}